Synapse & thready

Otázka od: Tomas Rosa

18. 11. 2003 12:19

Zdravim,

   presel jsem ze svych socketu na Synapsi (uz me nebavilo resit novou
verzi SSL a pod.), ale mel bych dotaz:

   Drove jsem pouzival jeden socket, ktery jsem vytvoril v hlavnim threadu
a predal jeste druhemu threadu. Hlavni thread do sokoetu jen ZAPISOVAL a
druhy thread jen CETL. Protoze to byla moje implementace, vedel jsem ze
nemuze dojit ke kolizi (na urovni meho kodu - jestli na urvoni OS - to uz
nevim  , nicmene tady jsem synapsi tak dokonale nezkoumal, abych
zjistitl jestli nemuze dochazet ke kolizim.

   Je tedy bezpecne to provozovat takto, nebo tam mam dat kriticke sekce. A
pokud ano, kam (cteni muze trvat relativne dlouho a nerad bych to mel v
kriticke sekci, protoze pak ztraci vyznam ten thread).




                                        S pozdravem
                                                Tomas Rosa

------------------------=[ pinknet on every screen]=-----------------------
Tomas Rosa
Tomas.Rosa@PinkNet.cz http://www.pnws.org
+420 602 860 704
PinkNet Web Server for Win32 - FREEWARE www.pnws.org
---------------------------------------------------------------------------






----------
* www.inMail.sk - Vasa emailova adresa na cely zivot ZDARMA
* Mail neobsahuje virusy. Zkontrolovane antivirusom NOD32 (www.eset.sk)
* www.SlovakNET.sk - profesionalny webhosting, domena .SK ZADARMO
* Zoner Media Explorer 5 - stiahnite si pomocnika pre digitalnu fotografiu
(zme.zoner.sk)

Odpovedá: Lukas Gebauer

18. 11. 2003 13:30

> Drove jsem pouzival jeden socket, ktery jsem vytvoril v hlavnim threadu
> a predal jeste druhemu threadu. Hlavni thread do sokoetu jen ZAPISOVAL a
> druhy thread jen CETL. Protoze to byla moje implementace, vedel jsem ze
> nemuze dojit ke kolizi (na urovni meho kodu - jestli na urvoni OS - to uz
> nevim  , nicmene tady jsem synapsi tak dokonale nezkoumal, abych
> zjistitl jestli nemuze dochazet ke kolizim.

Popravde, tohle jsem nikdy nezkousel ani nezkoumal. Radeji bych to
ani nezkousel.   Zvlast v pripade SSL rezimu tam je mnoho mist, kdy
to muze nadelat paseku.



--
Lukas Gebauer.

E-mail: gebauerl@mlp.cz
http://www.ararat.cz/synapse/ - Ararat Synapse - TCP/IP Lib.





----------
* www.inMail.sk - Vasa emailova adresa na cely zivot ZDARMA
* Mail neobsahuje virusy. Zkontrolovane antivirusom NOD32 (www.eset.sk)
* www.SlovakNET.sk - profesionalny webhosting, domena .SK ZADARMO
* Zoner Media Explorer 5 - stiahnite si pomocnika pre digitalnu fotografiu
(zme.zoner.sk)

Odpovedá: Tomas Rosa

18. 11. 2003 13:52


> > Drove jsem pouzival jeden socket, ktery jsem vytvoril v hlavnim threadu
> > a predal jeste druhemu threadu. Hlavni thread do sokoetu jen ZAPISOVAL a
> > druhy thread jen CETL. Protoze to byla moje implementace, vedel jsem ze
> > nemuze dojit ke kolizi (na urovni meho kodu - jestli na urvoni OS - to uz
> > nevim  , nicmene tady jsem synapsi tak dokonale nezkoumal, abych
> > zjistitl jestli nemuze dochazet ke kolizim.
>
>Popravde, tohle jsem nikdy nezkousel ani nezkoumal. Radeji bych to
>ani nezkousel.   Zvlast v pripade SSL rezimu tam je mnoho mist, kdy
>to muze nadelat paseku.

ok, takze rikas ze se mam patlat s nejakou frontou a predavat si vsechny
pakety k odeslani do (zatim cteciho) threadu? To jsem zrovna nechtel slyset
:-| Jak krasne mi to drive fungovalo (at ziji asynchroni protokoly)!

btw: kdyz uz jsme u toho SSL, co vse je potreba pro zapnuti SSL na TCP/IP
spojeni v synapsi? DLLka mam a dal jsem

    cs.SSLEnabled:=true
...
...
    cs.Connect(fHost,IntToStr(fPort));
    if (cs.LastError=0) then
    begin
       if cs.SSLEnabled then
       begin
          cs.SSLDoConnect;
          if cs.SSLCheck then cok:=true;
       end else cok:=true;
    end;

a nespojilo se to pres SSL - vzdy se uzavrelo spojeni. SSLCheck prosel OK,
ale spojeni se po zapsani dat uzavre.


                                        S pozdravem
                                                Tomas Rosa

------------------------=[ pinknet on every screen]=-----------------------
Tomas Rosa
Tomas.Rosa@PinkNet.cz http://www.pnws.org
+420 602 860 704
PinkNet Web Server for Win32 - FREEWARE www.pnws.org
---------------------------------------------------------------------------






----------
* www.inMail.sk - Vasa emailova adresa na cely zivot ZDARMA
* Mail neobsahuje virusy. Zkontrolovane antivirusom NOD32 (www.eset.sk)
* www.SlovakNET.sk - profesionalny webhosting, domena .SK ZADARMO
* Zoner Media Explorer 5 - stiahnite si pomocnika pre digitalnu fotografiu
(zme.zoner.sk)

Odpovedá: Lukas Gebauer

18. 11. 2003 15:02

> >Popravde, tohle jsem nikdy nezkousel ani nezkoumal. Radeji bych to
> >ani nezkousel.   Zvlast v pripade SSL rezimu tam je mnoho mist, kdy
> >to muze nadelat paseku.
>
> ok, takze rikas ze se mam patlat s nejakou frontou a predavat si vsechny
> pakety k odeslani do (zatim cteciho) threadu? To jsem zrovna nechtel slyset
> :-| Jak krasne mi to drive fungovalo (at ziji asynchroni protokoly)!

No, jak jsem rekl, nezoumal jsem to.

> btw: kdyz uz jsme u toho SSL, co vse je potreba pro zapnuti SSL na TCP/IP
> spojeni v synapsi? DLLka mam a dal jsem

Mas dve moznosti... bud:

1.
     cs.SSLEnabled:=true
     cs.Connect(fHost,IntToStr(fPort));

... a v tuto chvili mas bud navazane spojeni se SSL, nebo je vracena
v LastError chyba.

2.
     cs.Connect(fHost,IntToStr(fPort));
     if (cs.LastError=0) then
         cs.SSLDoConnect;

.. a opet, bud je ti vracena chyba v lastError, nebo jsi spojeny se
zapnutym SSL.

Ty jsi tyto dva zpusoby nejak pomichal dohromady, takze ses vlastne
pokousel oterit SSL na existujicim SSL spojeni, z cehoz bylo OpenSSL
vydesene.  

--
Lukas Gebauer.

E-mail: gebauerl@mlp.cz
http://www.ararat.cz/synapse/ - Ararat Synapse - TCP/IP Lib.





----------
* www.inMail.sk - Vasa emailova adresa na cely zivot ZDARMA
* Mail neobsahuje virusy. Zkontrolovane antivirusom NOD32 (www.eset.sk)
* www.SlovakNET.sk - profesionalny webhosting, domena .SK ZADARMO
* Zoner Media Explorer 5 - stiahnite si pomocnika pre digitalnu fotografiu
(zme.zoner.sk)

Odpovedá: Tomas Rosa

18. 11. 2003 16:28


>
>No, jak jsem rekl, nezoumal jsem to.

ok, budu prvni co to zkusi   Bez SSLka to jede bez problemu, uvidime co
na to rekne SSL.


>Ty jsi tyto dva zpusoby nejak pomichal dohromady, takze ses vlastne
>pokousel oterit SSL na existujicim SSL spojeni, z cehoz bylo OpenSSL
>vydesene.  

:-D



                                        S pozdravem
                                                Tomas Rosa

------------------------=[ pinknet on every screen]=-----------------------
Tomas Rosa
Tomas.Rosa@PinkNet.cz http://www.pnws.org
+420 602 860 704
PinkNet Web Server for Win32 - FREEWARE www.pnws.org
---------------------------------------------------------------------------






----------
* www.inMail.sk - Vasa emailova adresa na cely zivot ZDARMA
* Mail neobsahuje virusy. Zkontrolovane antivirusom NOD32 (www.eset.sk)
* www.SlovakNET.sk - profesionalny webhosting, domena .SK ZADARMO
* Zoner Media Explorer 5 - stiahnite si pomocnika pre digitalnu fotografiu
(zme.zoner.sk)